home *** CD-ROM | disk | FTP | other *** search
/ Chaos CD Blue / Chaos_CD_Blue__[1999].iso / contrib / security / Cryptography_FAQ_(03_10_Basic_Cryptology) < prev    next >
Internet Message Format  |  1999-11-21  |  13KB

  1. Path: senator-bedfellow.mit.edu!faqserv
  2. From: crypt-comments@math.ncsu.edu
  3. Newsgroups: sci.crypt,talk.politics.crypto,sci.answers,news.answers,talk.answers
  4. Subject: Cryptography FAQ (03/10: Basic Cryptology)
  5. Supersedes: <cryptography-faq/part03_939635163@rtfm.mit.edu>
  6. Followup-To: poster
  7. Date: 1 Nov 1999 11:28:27 GMT
  8. Organization: The Crypt Cabal
  9. Lines: 251
  10. Approved: news-answers-request@MIT.Edu
  11. Expires: 6 Dec 1999 11:27:53 GMT
  12. Message-ID: <cryptography-faq/part03_941455673@rtfm.mit.edu>
  13. References: <cryptography-faq/part01_941455673@rtfm.mit.edu>
  14. Reply-To: crypt-comments@math.ncsu.edu
  15. NNTP-Posting-Host: penguin-lust.mit.edu
  16. X-Last-Updated: 1994/07/05
  17. Originator: faqserv@penguin-lust.MIT.EDU
  18. Xref: senator-bedfellow.mit.edu sci.crypt:112657 talk.politics.crypto:38793 sci.answers:10784 news.answers:170056 talk.answers:4007
  19.  
  20. Archive-name: cryptography-faq/part03
  21. Last-modified: 93/10/10
  22.  
  23. This is the third of ten parts of the sci.crypt FAQ. The parts are
  24. mostly independent, but you should read the first part before the rest.
  25. We don't have the time to send out missing parts by mail, so don't ask.
  26. Notes such as ``[KAH67]'' refer to the reference list in the last part.
  27.  
  28. The sections of this FAQ are available via anonymous FTP to rtfm.mit.edu 
  29. as /pub/usenet/news.answers/cryptography-faq/part[xx]. The Cryptography 
  30. FAQ is posted to the newsgroups sci.crypt, talk.politics.crypto, 
  31. sci.answers, and news.answers every 21 days.
  32.  
  33.  
  34. Contents:
  35.  
  36. 3.1. What is cryptology? Cryptography? Plaintext? Ciphertext? Encryption? Key?
  37. 3.2. What references can I start with to learn cryptology?
  38. 3.3. How does one go about cryptanalysis?
  39. 3.4. What is a brute-force search and what is its cryptographic relevance?
  40. 3.5. What are some properties satisfied by every strong cryptosystem?
  41. 3.6. If a cryptosystem is theoretically unbreakable, then is it
  42.   guaranteed analysis-proof in practice?
  43. 3.7. Why are many people still using cryptosystems that are
  44.   relatively easy to break?
  45. 3.8. What are the basic types of cryptanalytic `attacks'?
  46.  
  47.  
  48. 3.1. What is cryptology? Cryptography? Plaintext? Ciphertext? Encryption? Key?
  49.  
  50.   The story begins: When Julius Caesar sent messages to his trusted
  51.   acquaintances, he didn't trust the messengers. So he replaced every A
  52.   by a D, every B by a E, and so on through the alphabet. Only someone
  53.   who knew the ``shift by 3'' rule could decipher his messages.
  54.  
  55.   A cryptosystem or cipher system is a method of disguising messages so
  56.   that only certain people can see through the disguise. Cryptography is
  57.   the art of creating and using cryptosystems. Cryptanalysis is the art
  58.   of breaking cryptosystems---seeing through the disguise even when
  59.   you're not supposed to be able to. Cryptology is the study of both
  60.   cryptography and cryptanalysis.
  61.  
  62.   The original message is called a plaintext. The disguised message is
  63.   called a ciphertext. Encryption means any procedure to convert
  64.   plaintext into ciphertext. Decryption means any procedure to convert
  65.   ciphertext into plaintext.
  66.  
  67.   A cryptosystem is usually a whole collection of algorithms. The
  68.   algorithms are labelled; the labels are called keys. For instance,
  69.   Caesar probably used ``shift by n'' encryption for several different
  70.   values of n. It's natural to say that n is the key here.
  71.  
  72.   The people who are supposed to be able to see through the disguise are
  73.   called recipients. Other people are enemies, opponents, interlopers,
  74.   eavesdroppers, or third parties.
  75.  
  76. 3.2. What references can I start with to learn cryptology?
  77.  
  78.   For an introduction to technical matter, the survey articles given
  79.   in part 10 are the best place to begin as they are, in general,
  80.   concise, authored by competent people, and well written. However,
  81.   these articles are mostly concerned with cryptology as it has
  82.   developed in the last 50 years or so, and are more abstract and
  83.   mathematical than historical. The Codebreakers by Kahn [KAH67] is
  84.   encyclopedic in its history and technical detail of cryptology up
  85.   to the mid-60's.
  86.  
  87.   Introductory cryptanalysis can be learned from Gaines [GAI44] or
  88.   Sinkov [SIN66]. This is recommended especially for people who want
  89.   to devise their own encryption algorithms since it is a common
  90.   mistake to try to make a system before knowing how to break one.
  91.  
  92.   The selection of an algorithm for the DES drew the attention of
  93.   many public researchers to problems in cryptology. Consequently
  94.   several textbooks and books to serve as texts have appeared. The
  95.   book of Denning [DEN82] gives a good introduction to a broad range
  96.   of security including encryption algorithms, database security,
  97.   access control, and formal models of security. Similar comments
  98.   apply to the books of Price & Davies [PRI84] and Pfleeger [PFL89].
  99.  
  100.   The books of Konheim [KON81] and Meyer & Matyas [MEY82] are quite
  101.   technical books. Both Konheim and Meyer were directly involved in
  102.   the development of DES, and both books give a thorough analysis of
  103.   DES. Konheim's book is quite mathematical, with detailed analyses
  104.   of many classical cryptosystems. Meyer and Matyas concentrate on
  105.   modern cryptographic methods, especially pertaining to key management
  106.   and the integration of security facilities into computer systems and
  107.   networks. For more recent documentation on related areas, try
  108.   G. Simmons in [SIM91].
  109.  
  110.   The books of Rueppel [RUE86] and Koblitz [KOB89] concentrate on
  111.   the application of number theory and algebra to cryptography.
  112.  
  113. 3.3. How does one go about cryptanalysis?
  114.  
  115.   Classical cryptanalysis involves an interesting combination of
  116.   analytical reasoning, application of mathematical tools, pattern
  117.   finding, patience, determination, and luck. The best available
  118.   textbooks on the subject are the Military Cryptanalytics series
  119.   [FRIE1]. It is clear that proficiency in cryptanalysis is, for
  120.   the most part, gained through the attempted solution of given
  121.   systems. Such experience is considered so valuable that some of the
  122.   cryptanalyses performed during WWII by the Allies are still
  123.   classified.
  124.  
  125.   Modern public-key cryptanalysis may consist of factoring an integer,
  126.   or taking a discrete logarithm. These are not the traditional fare
  127.   of the cryptanalyst. Computational number theorists are some of the
  128.   most successful cryptanalysts against public key systems.
  129.  
  130. 3.4. What is a brute-force search and what is its cryptographic relevance?
  131.  
  132.   In a nutshell: If f(x) = y and you know y and can compute f, you can
  133.   find x by trying every possible x. That's brute-force search.
  134.  
  135.   Example: Say a cryptanalyst has found a plaintext and a corresponding
  136.   ciphertext, but doesn't know the key. He can simply try encrypting the
  137.   plaintext using each possible key, until the ciphertext matches---or
  138.   decrypting the ciphertext to match the plaintext, whichever is faster.
  139.   Every well-designed cryptosystem has such a large key space that this
  140.   brute-force search is impractical.
  141.     
  142.   Advances in technology sometimes change what is considered
  143.   practical. For example, DES, which has been in use for over 10 years
  144.   now, has 2^56, or about 10^17, possible keys. A computation with
  145.   this many operations was certainly unlikely for most users in the
  146.   mid-70's. The situation is very different today given the dramatic
  147.   decrease in cost per processor operation. Massively parallel
  148.   machines threaten the security of DES against brute force search.
  149.   Some scenarios are described by Garron and Outerbridge [GAR91].
  150.  
  151.   One phase of a more sophisticated cryptanalysis may involve a
  152.   brute-force search of some manageably small space of possibilities.
  153.  
  154. 3.5. What are some properties satisfied by every strong cryptosystem?
  155.  
  156.   The security of a strong system resides with the secrecy of the key
  157.   rather than with the supposed secrecy of the algorithm.
  158.  
  159.   A strong cryptosystem has a large keyspace, as mentioned above. It
  160.   has a reasonably large unicity distance; see question 8.8.
  161.  
  162.   A strong cryptosystem will certainly produce ciphertext which appears
  163.   random to all standard statistical tests (see, for example, [CAE90]).
  164.     
  165.   A strong cryptosystem will resist all known previous attacks. A
  166.   system which has never been subjected to scrutiny is suspect.
  167.  
  168.   If a system passes all the tests mentioned above, is it necessarily
  169.   strong? Certainly not. Many weak cryptosystems looked good at first.
  170.   However, sometimes it is possible to show that a cryptosystem is
  171.   strong by mathematical proof. ``If Joe can break this system, then
  172.   he can also solve the well-known difficult problem of factoring
  173.   integers.'' See part 6. Failing that, it's a crap shoot.
  174.  
  175. 3.6. If a cryptosystem is theoretically unbreakable, then is it
  176.   guaranteed analysis-proof in practice?
  177.  
  178.   Cryptanalytic methods include what is known as ``practical
  179.   cryptanalysis'': the enemy doesn't have to just stare at your
  180.   ciphertext until he figures out the plaintext. For instance, he might
  181.   assume ``cribs''---stretches of probable plaintext. If the crib is
  182.   correct then he might be able to deduce the key and then decipher the
  183.   rest of the message. Or he might exploit ``isologs''---the same
  184.   plaintext enciphered in several cryptosystems or several keys. Thus
  185.   he might obtain solutions even when cryptanalytic theory says he
  186.   doesn't have a chance.
  187.  
  188.   Sometimes, cryptosystems malfunction or are misused. The one-time pad,
  189.   for example, loses all security if it is used more than once! Even
  190.   chosen-plaintext attacks, where the enemy somehow feeds plaintext into
  191.   the encryptor until he can deduce the key, have been employed. See
  192.   [KAH67].
  193.   
  194. 3.7. Why are many people still using cryptosystems that are
  195.   relatively easy to break?
  196.  
  197.   Some don't know any better. Often amateurs think they can design
  198.   secure systems, and are not aware of what an expert cryptanalyst
  199.   could do. And sometimes there is insufficient motivation for anybody
  200.   to invest the work needed to crack a system.
  201.  
  202. 3.8. What are the basic types of cryptanalytic `attacks'?
  203.  
  204.   A standard cryptanalytic attack is to know some plaintext matching a
  205.   given piece of ciphertext and try to determine the key which maps one 
  206.   to the other.  This plaintext can be known because it is standard (a
  207.   standard greeting, a known header or trailer, ...) or because it is
  208.   guessed.  If text is guessed to be in a message, its position is probably
  209.   not known, but a message is usually short enough that the cryptanalyst
  210.   can assume the known plaintext is in each possible position and do
  211.   attacks for each case in parallel.  In this case, the known plaintext can
  212.   be something so common that it is almost guaranteed to be in a message.
  213.  
  214.   A strong encryption algorithm will be unbreakable not only under known
  215.   plaintext (assuming the enemy knows all the plaintext for a given
  216.   ciphertext) but also under "adaptive chosen plaintext" -- an attack
  217.   making life much easier for the cryptanalyst.  In this attack, the enemy
  218.   gets to choose what plaintext to use and gets to do this over and over,
  219.   choosing the plaintext for round N+1 only after analyzing the result of
  220.   round N.
  221.  
  222.   For example, as far as we know, DES is reasonably strong even under an
  223.   adaptive chosen plaintext attack (the attack Biham and Shamir used).  Of
  224.   course, we do not have access to the secrets of government cryptanalytic
  225.   services.  Still, it is the working assumption that DES is reasonably
  226.   strong under known plaintext and triple-DES is very strong under all
  227.   attacks.
  228.  
  229.   To summarize, the basic types of cryptanalytic attacks in order of
  230.   difficulty for the attacker, hardest first, are:
  231.  
  232.   cyphertext only: the attacker has only the encoded message from which 
  233.     to determine the plaintext, with no knowledge whatsoever of the
  234.     latter.
  235.  
  236.     A cyphertext only attack is usually presumed to be possible, and
  237.     a code's resistance to it is considered the basis of its 
  238.     cryptographic security.
  239.  
  240.   known plaintext: the attacker has the plaintext and corresponding 
  241.     cyphertext of an arbitrary message not of his choosing. The
  242.     particular message of the sender's is said to be `compromised'.
  243.  
  244.     In some systems, one known cyphertext-plaintext pair will 
  245.     compromise the overall system, both prior and subsequent
  246.     transmissions, and resistance to this is characteristic of a 
  247.     secure code.
  248.  
  249.   Under the following attacks, the attacker has the far less likely
  250.   or plausible ability to `trick' the sender into encrypting or 
  251.   decrypting arbitrary plaintexts or cyphertexts. Codes that resist 
  252.   these attacks are considered to have the utmost security.
  253.  
  254.   chosen plaintext: the attacker has the capability to find the 
  255.     cyphertext corresponding to an arbitrary plaintext message of his 
  256.     choosing.
  257.  
  258.   chosen cyphertext: the attacker can choose arbitrary cyphertext and
  259.     find the corresponding decrypted plaintext. This attack can show
  260.     in public key systems, where it may reveal the private key.
  261.  
  262.   adaptive chosen plaintext: the attacker can determine the cyphertext
  263.     of chosen plaintexts in an interactive or iterative process based on
  264.     previous results. This is the general name for a method of attacking 
  265.     product ciphers called `differential cryptanalysis'.
  266.  
  267.   The next part of the FAQ gives the mathematical detail behind the 
  268.   various types of cryptoanalytic attacks.
  269.  
  270.